                 YAWPI: Yet Another Windows Program Installer
                 ============================================

                                Version 2.3
                                ===========


1. Introduction
_______________

YAWPI is a simple yet powerful and elegant Windows installation program.
It features user selection of destination directory, full screen main window
with color gradient (similar to MS-Setup) and display of meter bar
(progress bar) for each program disk, as well as numeric percentage progress
per file or archive.

New in version 2.3 are a fix regarding ExecPrompt and the addition of IconPrompt
option.

New in version 2.2 are copy directories, prompt before exec and placement
of the title line at the bottom of the screen.

New in version 2.1 are uninstall, support for multiple languages and a few
other enhancements.

YAWPI can copy files and uncompress archives (as well as nested archives)
into subdirectories or the Windows directory. The decompression code is
integrated in INSTALL.EXE. That means that you can compress your application
very tightly without paying royalties for compression software.

The source directory can be on a floppy drive, CD drive or hard drive.
Multiple floppy diskettes are supported, as well as multiple .zip files
distributed through BBS's and the Internet.

The installation parameters are set by defining variables in a simple syntax
similar to .INI files (Variable=Value). No scripts and no fancy script
editors and generators - simply edit the configuration file (INSTALL.CFG) 
and modify the variables to match your application - that's all
there is to it!! If you start from the supplied samples you can have a
complete package in half an hour.


2. Registration
_______________

YAWPI is a shareware product. It means that you can evaluate it for free but
you must register before using this software to distribute your application.

The unregistered version has all the functionally of the registered version
so you can prepare your configuration files and test the installation
process before registering. However, the unregistered version displays
the message "YAWPI - Unregistered Version 2.x" on the caption bar.

With QUICK registration you simply receive a registration password that
matches your name (or company name). As soon as you enter your name and
password to the 'Register' dialog of the Seal editor, you can modify the
title of the caption bar to your liking.

Note: if you did not receive a registration password yet, do not use the Seal editor.

Your password will work with future versions of YAWPI, so you can upgrade
by simply downloading the latest version from our home page
(http://www.rtlsoft.com/yawpi) or from any other location.

With FULL registration you will receive the full source code (C and C++)
of YAWPI and AR, so you will be free to further fine tune it according
to your needs.

Edit the file "register.txt" (or click on the "Register" icon), fill in
the details and send it with your payment by e-mail, fax or s-mail.

3. Windows 95
_____________

This version of YAWPI was compiled for Windows 3.1 but was tested under
Windows 95. It works well under Windows 95 but does not support long file
names or long directory names (folders, that is...).

INSTALL.EXE may be renamed to SETUP.EXE (or anything else, for example
CdSetup.exe and HdSetup.exe).


4. Compressed Archives
______________________

YAWPI supports archives compressed by the AR freeware utility. AR is not
compatible with PKZIP but achieves almost the same compression rate.
This is *far* better than using Microsoft COMPRESS on individual files.

AR is freeware and is available with C source. The DOS based AR.EXE
is included in this package.

If your application uses a large number of small files you can save upto 15%
of the space by using nested archives. The extra saving comes from the fact
that compression algorithms work better on large files. You first combine
your small files into one large *uncompressed* archive, then compress
that file into a container archive. Here is how you do it with AR:

	AR s myprog.ar files*.*
	AR a myprog.arr myprog.ar

"myprog.arr" is smaller than "myprog.ar" created by:

	AR a myprog.ar files*.*

If you mark "myprog.arr" as a nested archive, YAWPI will perform
the following steps during installation:

        1. Extract "myprog.ar" from "myprog.arr".
        2. Extract "files*.*" from "myprog.ar".
        3. Delete "myprog.ar".

Notes:

        1. AR always saves and restores the file paths in the archive. This
           is equivalent to "pkzip -P" and "pkunzip -d". 

           You should therefore avoid specifying absolute pathnames when 
           preparing the archives.

						 ar myprog.ar c:\myprog\files*.*
		   ar mydata.ar c:\myprog\data\files*.*

	   Wrong:  paths are absolute, user cannot change them.

                   cd \myprog 
		   ar myprog.ar files*.*
                   ar mydata.ar data\files*.*

           Right:  paths are relative to c:\myprog, user can install
                   to another directory such as d:\userprog.
                   
        2. To create a nested archive with pkzip use the following steps:

           pkzip -e0 myprog0.zip files*.*
           pkzip myprog.zip myprog0.zip


5. INSTALL.CFG
______________

The "install.cfg" file contains three sections:

    1. General section [General] contains general parameters.
    2. Disk section [Disk1] [Disk2] etc. contains the list of files and 
       archives to be installed.
    3. Groups section [Groups] contains the program group and icons to
       be installed on the user's desktop.

This file must be located on the first floppy disk (or in a subdirectory of
the hard drive) together with "install.exe".

If you rename "install.exe" to another name, you must also rename "install.cfg".

For example, your CD-ROM application may include "CdSetup.exe" and "HdSetup.exe"
for running directly from the CD drive or from the hard drive, respectively. 
In that case, include "CdSetup.cfg" and "HdSetup.cfg" files to provide the
configuration for each type of installation.

The following subsections (numbered 5.*) describe the variables that belong 
to the general section of "install.cfg".


5.1 ProgramName

Defines the name of the program being installed.

Example: ProgramName=Magic Graphics


5.2 DefaultPath

Defines the default destination path for installing the program.

Example: DefaultPath=C:\MGRAPHIC

5.2a DestPathPrompt

If defined to "N" the user is not prompted for destination path.
By default DestPathPrompt is "Y".

Example:

DestPathPrompt=N

5.3 Title1

A centered title line at the top of the main window.

Example: Title1=Magic Graphics

5.4 Title1Size

Size of Title1 in points. This number is converted to pixels depending on
the screen resolution. Use 50 points for large letters, 20 points for small
letters, or any number in between.

Example: Title1Size=25

5.5 Title1Color

Color of Title1 in RGB.

Example: Title1Color=30 187 0


5.6 Title2, Title2Size, Title2Color

Same as Title1. This is a second title line.

5.6a Title2Pos

By default Title2 is drawn just below Title1 at the top of the screen.
If you define

Title2Pos=Bottom

then Title2 is drawn at the bottom of the screen.

5.7 TitleFont

The font used for both titles. The default font is "Times New Roman".
However, if you specify a font which does not exist on the user's
system, Windows uses its default font of "Arial".

5.8 TitleShadeColor

Color of shade for Title1 and Title2 in RGB.

Example: TitleShadeColor=0 0 0

5.9 TopColor, BottomColor

Define the background color at the top and bottom of the main window.
You can get a solid background by setting TopColor and BottomColor to the
same value. If TopColor is different than Bottom Color you get
a color gradient.

Example:

        TopColor=0 76 38
        BottomColor=51 204 102

5.10 NumGradientSteps

Defines the number of color gradient steps. This number should not
exceed 200.

Example: NumGradientSteps=32

5.11 Welcome, WelcomeCaption

If "Welcome" is defined, a dialog box with this message and "Yes/No"
buttons is displayed at the very beginning.

If the message has more than one line, add a backslash character ('\')
at the end of each line except for the last one.

"WelcomeCaption" is the text on the caption bar of the dialog box.

Example:

Welcome=The Magic Application will be installed on your hard drive.\
Continue?
WelcomeCaption=Hard Drive Installation

5.12 DirExistsWarn

If defined to "Y" (by default), YAWPI will warn the user if the destination
directory already exists. To suppress this warning, define this variable
to "N".

Example: DirExistsWarn=N

5.13 DirNotFoundWarn

If defined to "Y", YAWPI will warn the user if the destination directory
is *not* found. This is useful for installation of upgrade versions or
separate components of a larger software package.

The default option is DirNotFoundWarn=N

5.14 FileExistsWarn

If defined to "Y" (by default), YAWPI will warn the user if the destination
file already exists and has a newer date than the source file.
To suppress this warning, define this variable to "N".

Note: this feature applies to uncompressed files only, not to files being
extracted from compressed archives.

Example: FileExistsWarn=N

5.15 Caption

Sets the caption of the main window.

Example: Caption=Magic Graphics Installation

Note: This variable works only in the REGISTERED VERSION of YAWPI.

5.16 Username

Registered user name, or developer of the application. This variable is
added to INSTALL.CFG automatically by the Seal editor.

5.17 Seal

This variable is entered automatically by the Seal editor. It is an
encrypted checksum of all the INSTALL.CFG variables described above.

The purpose of the Seal variable is to prevent your users from pirating
your registered version of YAWPI. If anyone modifies INSTALL.CFG without
Sealing it again, YAWPI will display the "Unregistered Version" message
on the caption bar.

5.18 Language

This is an optional variable that specifies a list of text files containing
text definitions for languages other than english.

Example1: Language=english.txt french.txt spanish.txt
Example2: Language=german.txt

If the list contains more than one language (as in example 1), the user
is presented with a dropdown box for selecting the installation language.
The first language on the list is the default selection.

For more information on multilingual configurations of Yawpi, please
read the file "language.txt".


5.19 SpaceRequired

Specifies the number of bytes required to install the application. If this
variable is defined, Yawpi checks the amount of free space on the user's 
hard drive. The user is warned if the required space is larger than the 
the available free space.

Example:

SpaceRequired=2104000

5.20 SrcDir

Specifies a source directory other than the directory where "install.exe" is.

If this variable is defined, all the files, including configuration files and
archives (but not including "install.cfg"), are taken from the specified
directory.

Occurances of the source directory keyword "$s" are substituted
with the value of *original* source directory (i.e. the directory where
"install.exe" was found).

This keyword may appear multiple times in the [Disk*] sections, so that files
can be copied from more than one directory.

Example:

SrcDir=$s\hd_files
[Disk1]
myprog.ar=$d
SrcDir=$s\cd_files
myprog2.ar=$d


In this example, the source directory is defined to be "hd_files", a subdirectory 
of the directory where "install.exe" resides. If this installation takes place
from floppy drive a: then the archive "myprog.ar" should be in 
"a:\hd_files\myprog.ar".

Other configuration files such as "groups.cfg" and foreign language string
definitions should also be placed in the "hd_files" subdirectory.

The file "myprog2.ar" is taken from "a:\cd_files".


5.21 Exec

Specifies a program path to execute after installation is complete.

Example:

Exec=$s\vfw\setup.exe


This example invokes a setup program to install Video for Windows.

5.21a ExecPrompt

If defined, the user will be prompted with this message before executing the
Exec file. Example:

ExecPrompt=Click OK to install Video for Windows.

5.22 RestartWindows

If defined to "Y", YAWPI prompts the user at the end of the installation.
If the user chooses "Yes" Windows is restarted.

By default RestartWindows=N.

5.23 RestartWindowsMsg

The message that is displayed if RestartWindows=Y.

Example:

RestartWindowsMsg=You must restart Windows before running this application.\
Restart now?

5.24 RebootSystem

If defined to "Y", YAWPI prompts the user at the end of the installation.
If the user chooses "Yes" the user's computer is rebooted.

By default RebootSystem=N.

5.25 RebootSystemMsg

The message that is displayed if RebootSystem=Y.

Example:

RebootSystemMsg=You must reboot your computer before running this application.\
Reboot now?

5.26 IconsPrompt

If defined to "N" the user is not prompted for installing icons on
the desktop. If "Group" and "Items" are defined and IconsPrompt is "N"
the icons are installed without prompting the user.

By default IconsPrompt is "Y".

Example:

DestPathPrompt=N

6. Disk Sections
________________

Following all the variables described above are the disk sections.
Each floppy disk has a section with a title of the form [Disk1] [Disk2] etc.
The section title must be on a separate line.

Within each disk section you list the files or archives on the disk.


6.1 Plain (uncompressed) Files

Define each uncompressed file to be copied to the destination directory
with the syntax:

<file>==<destination>

If <destination> contains the term "$d", it is substituted by the destination
path.

If <destination> contains the term "$w", it is substituted by the user's
Windows directory.

Example 1: PICTURE.DAT==$d\DATA

Will copy the file PICTURE.DAT to C:\MGRAPHIC\DATA. If the user had changed
the default C:\MGRAPHIC to D:\MG, the file will be copied to D:\MG\DATA.

Example 2: PICTURE.DAT==$d\DATA\PICTURE2.DAT

Will copy PICTURE.DAT to C:\MGRAPHIC\DATA\PICTURE2.DAT.

Example 3: MYPROG.INI==$w

Will copy the file MYPROG.INI to Windows directory (usually C:\WINDOWS).

6.1a Directories

If you specify a directory at the left side, all the files in this directory
are copied to the destination. The destination must be a directory too.

Example:

.==$d
system==$d\system
fonts==$d\fonts


The above example copies all the file in the source directory and in the
'system' and 'fonts' subdirectories. Note that this function does *not*
work recursively on subdirectories. Each subdirectory has to be specified
explicitly.


6.2 Compressed Archives

Define each compressed archive with the syntax:

<archive>=<destination>

Example: MYPROG.AR=$d\BIN

Will extract the contents of MYPROG.AR to C:\MGRAPHIC\BIN.

6.3 Nested Archives

Define each nested archive with the syntax:

<archive>=@<destination>

Example: MYPROG.ARR=@$d

Will first extract MYPROG.AR from MYPROG.ARR. Then extract the contents of
MYPROG.AR into the destination directory. Finally, MYPROG.AR is deleted.

Important Note: The container archive must contain a single archive with
the same base name as the nested archive, and same extension truncated
to two letters.

Examples:

		  MYPROG.ARR contains MYPROG.AR
		  YR_PROG.XYZ contains YR_PROG.XY

Read section 2 of this document again to see how to create nested archives.

6.4 .INI Files

If your application uses a private .INI file you can list it so that it
is merged with an existing .INI file of the same name (from previous
versions) rather than overwrite it.

<ini-file>=|<destination>

Examples:

	MYPROG.INI=|$w
	MYAPP.INI=|$d
	MYPROG.INI=|$w\HERPROG.INI

The definitions inside an .INI file may contain symbols for directory
substitution as follows:

"$d" is substituted for the destination directory.
"$s" is substituted for the source directory (useful when the application
     runs off a CD-ROM).
"$w" is substituted for the user's Windows directory (usually C:\WINDOWS).

Only lines that belong to a section will be copied to the destination.

Example:

        NoSection=This line is not copied
	[Magic Grahpics Application]
	BinDirectory=$d\BIN
	SamplesDirectory=$s\WAVE

6.5 SrcDir directive

Redefines the source directory for the files that follow.
See also section 5.20.


7. Groups Section
_________________

Following all the Disk sections you may specify the program groups section.
This section has the title "[Groups]" and includes information for adding
icons to the user's desktop.

7.1 Group

Defines the name of a program group where the icons to follow will be added.

Example: Group=Magic Applications Group

You may specify more than one group. Each group will contain the items
which follow its definition.

7.2 Item1, Item2 ...

Defines the icons in the selected group.

Example: Item1=$d\myprog.exe,Magic Grahpics,$d\myprog.exe,1
Example: Item2=$w\notepad.exe $d\register.frm,Register
Example: Item3=$d\dosapp.exe,Dos Magic,$d\dosapp.ico

Each definition line consists of up to 4 parameters separated by commas.
The first parameter defines the command line for starting the program.
The second parameter defines the title under the icon.
The third (optional) parameter defines the file that contains the icon.
The fourth (optional) parameter defines the icon number within the file.


Example:

[Groups]
Group=Magic Application Group
Item1=$d\myprog.exe,Magic Grahpics,$d\myprog.exe,1
Group=Another Magic Application Group
Item1=$w\notepad.exe $d\register.frm,Register
Group=Startup
Item1=$d\progload.exe,Magic Application Loader


8. THISDISK
___________

If you distribute your application on multiple floppy diskettes, you must
place a THISDISK file on each floppy. YAWPI uses THISDISK files to verify
that the correct floppy disk is in the drive.

8.1 DiskNumber

Defines the disk number, starting with 1.

Example: DiskNumber=1

8.2 NextDiskNumber

Defines the next distribution disk for your application. On the last disk,
do not define this variable (or define it to 0).

Example: NextDiskNumber=2


Notes: 

- If your application fits on a single floppy or when installing from
a CD drive or hard drive (drive C: or higher), THISDISK files are ignored. 
- If your application consists of multiple .ZIP files (corresponding to 
multiple floppy diskettes) the user should unzip them all into one subdirectory. 
All the [Disk*] sections are then merged into one "disk" at installation time, 
so the user will not be prompted for the next disk.


9. WIN.INI, SYSTEM.INI
______________________

If you need to add or modify a section in WIN.INI or SYSTEM.INI in the user's
Windows directory, simply place these files with your modifications on 
the first distribution diskette. You can use "$d", "$w" and "$s" within 
your WIN.INI. These symbols are substituted before being added to 
Windows WIN.INI. See section 6.4.

Sample WIN.INI:

        [windows]
        ScreenSaveActive=1

        [Magic Screen Saver]
        MagicDir=$d
        Settings=0 0 3 5


Note: You may specify WIN.INI or SYSTEM.INI as .INI files 
(with "<file>=|<destination>" syntax) but for compatibility with previous
versions, WIN.INI and SYSTEM.INI are detected and merged even if they
are not listed in the [Disk*] sections.


10. GROUPS.CFG
______________

For compatibility with previous versions, you can specify the program groups
and icons in a separate file called "groups.cfg".

Read section 7 again for a detailed description on how to define groups
and icons.

11. Uninstall
_____________

"Uninstal.exe" is an uninstaller. It reads directives from the "uninstal.cfg"
configuration file, which is similar to the "install.cfg" file.

11.1 UNINSTAL.CFG

The file "uninstal.cfg" contains the same three sections as "install.cfg".
They are: [General], [Disk1], [Groups].

The [General] section contains the same parameters as "install.cfg".

The [Disk1] section contains a list of directories and files to be deleted.

The [Groups] section contains a list of program groups and icons to be
deleted.

11.2 Floppy Disk Installation

When the user installs from floppy disks (or from a temporary directory on
the hard disk), the uninstall program "uninstal.exe" and the "uninstal.cfg"
files have to be copied to the destination directory.

Because the destination directory is not known until the program 
is installed, you should prepare the file "uninstal.cfg" with directory names
that are relative to the destination directory ($d) and Windows directory ($w).

In your "install.cfg" file include the lines:

[Disk1]
uninstal.cfg=|$d
uninstal.exe==$d
[Groups]
Group=My Application Group
Item1=$d\uninstal.exe $d

The first line copies the "uninstal.cfg" to the destination directory and 
substitutes '$d' and '$w' with the actual directory names.
The second line copies the uninstaller itself.

The [Groups] section installs an icon for the uninstaller. The first argument 
to the uninstaller is the directory where "uninstal.cfg" resides. 
The default for this argument is the same directory as "uninstal.exe".

Note: Under Windows 3.1 "uninstal.exe" cannot delete itself.

11.2 CD-ROM Installation

When the user installs from a CD-ROM, you may choose not to copy "uninstal.exe"
to the hard drive. The user then must insert the CD-ROM to the drive in order
to uninstall.

In this case you should include the following lines in your "install.cfg":

[Disk1]
uninstal.cfg=|$d
myprog.ini==$w
[Groups]
Group=My Application Group
Item1=$s\uninstal.exe $d

When the user clicks on the uninstall icon, the program will be loaded from
the CD-ROM and will read the "uninstal.cfg" from the hard drive with the 
correct directory names.

The line that copies "myprog.ini" needs to be explained.
If the user runs "uninstal.exe" directly from the CD-ROM, not by clicking
the icon with the command line parameter, the uninstaller will be invoked without
any command line arguments and will read "uninstal.cfg" from the CD-ROM. 
However this copy does not contain the correct destination
directory.

11.1 Keywords from INSTALL.CFG

The following keywords are identical in name and meaning to the keywords
in INSTALL.CFG. They belong to the [General] section.

Caption, Title1, Title1Size, Title1Color, Title2, Title2Size, Title2Color,
TitleShadeColor, ProgramName, TopColor, BottomColor, NumGradientSteps,
Welcome, Language, SrcDir.

Notes:
1. The SrcDir directive applies only to language translation files.
2. The uninstaller does not require the Username and Password keywords.

11.2 CfgFile

An optional directive specifying an .INI file name to be found in the user's
Windows directory. The specified .INI file should contain the variable
"UninstallDir". The value of "UninstallDir" is the directory where another
"UNINSTAL.CFG" file is placed with the list of directories and icons to be
deleted.

This directive is necessary for CD-ROM installations, in case the user runs
the  . The copy of "UNINSTAL.CFG"
on a CD-ROM cannot contain the names of the directories to be deleted because
those were chosen by the user at installation time.

If "CfgFile" is not specified, "UNINSTAL.CFG" is taken from the same directory
as UNINSTAL.EXE. The directory where "UNINSTAL.CFG" resides can also be specified
as a command line argument.


Example:

CfgFile=myprog.ini


11.2 [Disk1] Section

This section contains a list of directories and files to be deleted.

Example:

[Disk1]
Dir=$d\data
Dir=$d\bin
File=$d\myprog.exe
File=$w\myprog.ini

11.3 [Groups] Section

This section contains a list of program groups and icons to be deleted.
A program group that should not be deleted is marked with "=!" instead of "=".

Example:

[Groups]
Group=Magic Application Group
Group=!Startup
Item=Magic Graphic Program


The group "Magic Graphic Applications" with all its icons is deleted.
The group "Startup" is not deleted, just the icon of "Magic Graphic Program".


12. Seal Editor
_______________

Note: if you did not receive a registration password yet, do not use the Seal editor.

The Seal editor is a standard text editor with one additional feature -
it seals INSTALL.CFG files.

If you are a registered user of YAWPI you should enter your name and
registration password to the Seal editor. From the 'File' menu select
'Register' and enter the information to the Register dialog.

After you have finished preparing the INSTALL.CFG file, start the Seal
editor and open INSTALL.CFG (or SETUP.CFG) of your application. From the 'File'
menu select 'Save and Seal'. It will save any editing changes you have
made to the file and add your registration name and a special "seal" to 
INSTALL.CFG.

The seal enables the 'Caption' variable so YAWPI will display your
selected caption instead of "Unregistered Version" message.

The seal is unique to each INSTALL.CFG. It is generated as an encrypted
checksum of all the variables in in the file, not including [Disk*]
sections. Therefore you have to seal the INSTALL.CFG for every application
(if yo have more than one). Everytime you modify the title or color of the 
main screen you have to seal the file again, but there is no need to seal again
when you add or remove files for installation or groups and icons.

Your registration password does not appear in any files shipped with your
application. This feature prevents your users from pirating the registered
version of YAWPI and use it to install other applications.

Note: do not distribute SEAL.EXE with your application.



13. Upgrading From Version 1.2
______________________________

13.1 INSTALL.CFG filename

If you rename your install program from INSTALL.EXE to another name
such as SETUP.EXE, the configuration file should have the same base name
(e.g. SETUP.CFG).

For compatibility with previous versions, if SETUP.CFG is not found,
the file INSTALL.CFG is read.

13.2 FileExistsWarn

This is a new feature that may have implications on existing applications
using previous versions of Yawpi.

In previous versions of Yawpi, copied files received a new time stamp
at installation time. From version 2.0, the time stamp is copied from
the source file. This may cause spurious warnings if your user upgrades
to a newer version of your application.

Example:

Version 1.0 of your application uses Yawpi 1.2 and contains
a file "picture.pcx" dated January 1995. A user installed your
application on February 1995. The file "picture.pcx" was copied to
the user's hard drive and receive a time stamp of February 1995.

Version 2.0 of your application uses Yawpi 2.0 and still contains
the same "picture.pcx" dated January 1995. The same user installs
your application again. Yawpi 2.0 will warn the user about overwriting
"picture.pcx" because the source file (January 1995) is newer than
the destination file (February 1995).

13.3 Truncate long directory names

Yawpi is compiled for Windows 3.1 so it does not support long file names.
In previous versions of Yawpi, if the user supplied a long directory
name, e.g. "c:\myapplication", the directory name would be truncated
by DOS and the application was installed in "c:\myapplic".
However the icon would still point to "c:\myapplication\prog.exe"
and would not work.

In version 2.0 the icon would correctly point to "c:\myapplic\prog.exe".

13.4 Plain and .INI Filenames

You can now specify a different filename for the destination file:

e.g. SRCFILE.ABC=$d\DESTFILE.XYZ

Yawpi interprets the name on the right hand side as a file (rather than 
a directory) by the presence of a ".EXT" so

e.g. SRCFILE.ABC=$d\DESTFILE

will copy the file SRCFILE.ABC to a *directory* $d\DESTFILE.

13.5 3D Look

Dialog boxes have "3D look" when running under Windows 95. 

14. Upgrading From Version 1.1
______________________________

14.1 .INI Files

The feature of merging WIN.INI and SYSTEM.INI with the existing files
has been extended to any .INI file. Read section 6.4.

This is a new feature, upward compatibility is maintained.

14.2 Source Directory

You can now specify "$s" in .INI files and GROUPS.CFG. This symbol
is substituted by the source directory (where INSTALL.EXE was stated).
This is useful for applicatinos running from CD-ROM.

14.3 NumGradientSteps > 40

Fixed a bug that prevented full screen paint when NumGradientSteps > 40.

14.4 New .AR Format 

The .AR format was modified in order to be *incompatible* with LHZ compression
program. As a result, YAWPI 1.1 and 1.0 cannot read new .AR files generated
by the new AR.EXE. The motivation for it will be explained below, but take
note that:

	1. YAWPI 1.2 can read old .AR files.
	2. YAWPI 1.1 *cannot* read new .AR files.

Now for the motivation. Because the old .AR format is identical to the LHZ 
archive format, the internal archives contained in the application were 
recognized by a program called ULP used by some BBS systems. The ULP program
converts the .AR files into equivalent .ZIP files. When the user tries to
install the application, he/she gets a message: "Archive XXX.AR not found".
In other words, the conversion by ULP makes the application uninstallable!!!

The new .AR format contains a 4 byte header that prevents ULP from recognizing
it as a LHZ file. Problem is solved.

If you have distributed your application on BBS's, be sure to upgrade to
YAWPI 1.2, create new .AR files and release your application again.


14. Upgrading From Version 1.0
______________________________

14.1 Password

Do not put your registration password in INSTALL.CFG. Instead, use the 
Seal editor as explained in section 10. The password you received 
is still valid.

14.2 THISDISK

For backwards compatibility, files and archives can be listed in THISDISK
instead of INSTALL.CFG. If you choose this way, do not put any [Disk*] 
sections in INSTALL.CFG.

The only case in which you have to list your files and archives in 
INSTALL.CFG is when you distribute your application in multiple .ZIP files
which the user unzips into one subdirectory. The individual THISDISK files
then overwrite each other and if they contain file/archive information,
some of it is lost.

14.3 Windows 95 Installation

YAWPI Version 1.0 was tested with the Beta version of Win95. 
The release version of Win95 behaves differently, and program icons 
were not installed properly.

This was fixed by changing the communication with Program Manager.


15. The Lastest Version
_______________________

Check the following locations:

        1. CompuServe: GO WINUTIL.
        2. WWW: http://www.rtlsoft.com




